<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>Assimp: aiFile Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">Assimp
   &#160;<span id="projectnumber">v3.0 (July 2012)</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.1.1 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="structai_file.html#pub-attribs">Public Attributes</a>  </div>
  <div class="headertitle">
<div class="title">aiFile Struct Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>C-API: File callbacks.  
 <a href="structai_file.html#details">More...</a></p>

<p><a href="structai_file-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:aff2fff8c0458e7ec71f7de217c3a3033"><td class="memItemLeft" align="right" valign="top"><a class="el" href="cfileio_8h.html#ae42b845702ea55b32b2b112c3baf0f68">aiFileTellProc</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structai_file.html#aff2fff8c0458e7ec71f7de217c3a3033">FileSizeProc</a></td></tr>
<tr class="memdesc:aff2fff8c0458e7ec71f7de217c3a3033"><td class="mdescLeft">&#160;</td><td class="mdescRight">Callback to retrieve the size of the file, in bytes.  <a href="structai_file.html#aff2fff8c0458e7ec71f7de217c3a3033"></a><br/></td></tr>
<tr class="memitem:a1102d28d1c0be68ffed20476669bdb0d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="cfileio_8h.html#a3d24a0d0eda7275f21dcb958e78026e1">aiFileFlushProc</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structai_file.html#a1102d28d1c0be68ffed20476669bdb0d">FlushProc</a></td></tr>
<tr class="memdesc:a1102d28d1c0be68ffed20476669bdb0d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Callback to flush the file contents.  <a href="structai_file.html#a1102d28d1c0be68ffed20476669bdb0d"></a><br/></td></tr>
<tr class="memitem:a52287e81ca67b9d43cc1ce6142f781fa"><td class="memItemLeft" align="right" valign="top"><a class="el" href="cfileio_8h.html#a9d832b6f4c91e0b545bdeec33d663c2e">aiFileReadProc</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structai_file.html#a52287e81ca67b9d43cc1ce6142f781fa">ReadProc</a></td></tr>
<tr class="memdesc:a52287e81ca67b9d43cc1ce6142f781fa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Callback to read from a file.  <a href="structai_file.html#a52287e81ca67b9d43cc1ce6142f781fa"></a><br/></td></tr>
<tr class="memitem:a7a07b499be4ad433669246479a4d4ad2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="cfileio_8h.html#af8d51379aced160f5c3f69ba70e15d14">aiFileSeek</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structai_file.html#a7a07b499be4ad433669246479a4d4ad2">SeekProc</a></td></tr>
<tr class="memdesc:a7a07b499be4ad433669246479a4d4ad2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Callback to set the current position of the file cursor (fseek())  <a href="structai_file.html#a7a07b499be4ad433669246479a4d4ad2"></a><br/></td></tr>
<tr class="memitem:aaf2d88a3b2fcbdacf51119658283d27e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="cfileio_8h.html#ae42b845702ea55b32b2b112c3baf0f68">aiFileTellProc</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structai_file.html#aaf2d88a3b2fcbdacf51119658283d27e">TellProc</a></td></tr>
<tr class="memdesc:aaf2d88a3b2fcbdacf51119658283d27e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Callback to retrieve the current position of the file cursor (ftell())  <a href="structai_file.html#aaf2d88a3b2fcbdacf51119658283d27e"></a><br/></td></tr>
<tr class="memitem:aec528fa18f4755fe4f28d604fde28aad"><td class="memItemLeft" align="right" valign="top"><a class="el" href="cfileio_8h.html#a176132d0cd51c96302089ff3f8a8ee1c">aiUserData</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structai_file.html#aec528fa18f4755fe4f28d604fde28aad">UserData</a></td></tr>
<tr class="memdesc:aec528fa18f4755fe4f28d604fde28aad"><td class="mdescLeft">&#160;</td><td class="mdescRight">User-defined, opaque data.  <a href="structai_file.html#aec528fa18f4755fe4f28d604fde28aad"></a><br/></td></tr>
<tr class="memitem:ab9fca3a62e34a33592c13a6f31db7d1d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="cfileio_8h.html#ae74e4b7cd74b320d0ee9516a085e02e5">aiFileWriteProc</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structai_file.html#ab9fca3a62e34a33592c13a6f31db7d1d">WriteProc</a></td></tr>
<tr class="memdesc:ab9fca3a62e34a33592c13a6f31db7d1d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Callback to write to a file.  <a href="structai_file.html#ab9fca3a62e34a33592c13a6f31db7d1d"></a><br/></td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>C-API: File callbacks. </p>
<p>Actually, it's a data structure to wrap a set of fXXXX (e.g fopen) replacement functions.</p>
<p>The default implementation of the functions utilizes the fXXX functions from the CRT. However, you can supply a custom implementation to <a class="el" href="namespace_assimp.html" title="Assimp&#39;s CPP-API and all internal APIs.">Assimp</a> by delivering a custom <a class="el" href="structai_file_i_o.html" title="C-API: File system callbacks.">aiFileIO</a>. Use this to enable reading from other sources, such as ZIP archives or memory locations. </p>
</div><hr/><h2>Member Data Documentation</h2>
<a class="anchor" id="aff2fff8c0458e7ec71f7de217c3a3033"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="cfileio_8h.html#ae42b845702ea55b32b2b112c3baf0f68">aiFileTellProc</a> aiFile::FileSizeProc</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Callback to retrieve the size of the file, in bytes. </p>

</div>
</div>
<a class="anchor" id="a1102d28d1c0be68ffed20476669bdb0d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="cfileio_8h.html#a3d24a0d0eda7275f21dcb958e78026e1">aiFileFlushProc</a> aiFile::FlushProc</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Callback to flush the file contents. </p>

</div>
</div>
<a class="anchor" id="a52287e81ca67b9d43cc1ce6142f781fa"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="cfileio_8h.html#a9d832b6f4c91e0b545bdeec33d663c2e">aiFileReadProc</a> aiFile::ReadProc</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Callback to read from a file. </p>

</div>
</div>
<a class="anchor" id="a7a07b499be4ad433669246479a4d4ad2"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="cfileio_8h.html#af8d51379aced160f5c3f69ba70e15d14">aiFileSeek</a> aiFile::SeekProc</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Callback to set the current position of the file cursor (fseek()) </p>

</div>
</div>
<a class="anchor" id="aaf2d88a3b2fcbdacf51119658283d27e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="cfileio_8h.html#ae42b845702ea55b32b2b112c3baf0f68">aiFileTellProc</a> aiFile::TellProc</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Callback to retrieve the current position of the file cursor (ftell()) </p>

</div>
</div>
<a class="anchor" id="aec528fa18f4755fe4f28d604fde28aad"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="cfileio_8h.html#a176132d0cd51c96302089ff3f8a8ee1c">aiUserData</a> aiFile::UserData</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>User-defined, opaque data. </p>

</div>
</div>
<a class="anchor" id="ab9fca3a62e34a33592c13a6f31db7d1d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="cfileio_8h.html#ae74e4b7cd74b320d0ee9516a085e02e5">aiFileWriteProc</a> aiFile::WriteProc</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Callback to write to a file. </p>

</div>
</div>
<hr/>The documentation for this struct was generated from the following file:<ul>
<li><a class="el" href="cfileio_8h.html">cfileio.h</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Jul 10 2012 17:55:53 for Assimp by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.1.1
</small></address>
</body>
</html>
